package com.faithbj.printer.service;

import java.util.concurrent.TimeoutException;

import org.openqa.selenium.WebDriver;

public interface LoginService {
	
	boolean login(WebDriver driver);
	
	boolean queryGuarantee(WebDriver driver, String poaCode);
	
	boolean confirmGuarantee(WebDriver driver);
	
	boolean confirmResult(WebDriver driver) throws TimeoutException ;

	/**
	 * 机动车辆保险--非集中打印查询
	 * @param driver
	 * @param bizNo
	 * @return
	 */
	boolean printingPoolQuery(WebDriver driver, String bizNo);
	
	/**
	 * 机动车辆保险--机动车交通事故责任强制保险单（上海）
	 * @param driver
	 * @return
	 */
	boolean mandatoryInsurancePrint(WebDriver driver);
	
	/**
	 * 机动车辆保险--强制保险标志内置式（上海）
	 * @param driver
	 * @return
	 */
	boolean insuranceFlagPrint(WebDriver driver);
	
	/**
	 * 保险标志打印
	 * @param driver
	 * @return
	 */
	boolean insuranceFlagQuery(WebDriver driver);
	
	/**
	 * 机动车辆保险-非集中打印
	 * @param driver
	 * @return
	 */
//	boolean vehicleInsuranceNonFocusPrint(WebDriver driver);
	
	/**
	 * 保费发票打印查询 
	 * @param driver
	 * @param bizNo 交强和商业险的发票号，打印机是同一个
	 * @param order 打印顺序，两次打印的页面设置不同
	 * @return
	 */
	boolean invoiceQuery(WebDriver driver, String bizNo,Integer order);
	
	boolean printExcel(String[] data);
	
	boolean printExcelTxt(String[] data);
	
	/**
	 * 意外险登录
	 * @param driver
	 * @return
	 */
	boolean accidentLogin(WebDriver driver);
	
	/**
	 * 意外险查询 
	 * @param driver
	 * @param bizNo 意外险业务号
	 * @param order 打印机选第几个，在弹出打印时选择
	 * @return
	 */
	boolean accidentQuery(WebDriver driver, String bizNo,Integer order);
	/**
	 * 意外险发票打印 
	 * @param driver
	 * @param bizNo 意外险业务号
	 * @param order 打印机选第几个，在弹出打印时选择
	 * @return
	 */
	boolean accidentInvoicePrint(WebDriver driver, String bizNo,Integer order);
	
	void  checkResult(WebDriver driver,boolean result);

	/**
	 * 机动车辆保险--车险保险单打印（套打）
	 * @param driver
	 * @return
	 */
	boolean certificatePrint(WebDriver driver);

}
